package com.speaktoitcookbook.dao;

import java.util.List;

import com.speaktoitcookbook.bean.Collection;
import com.speaktoitcookbook.bean.UserInfo;

/**
 * 收藏信息相关操作接口
 * 
 * @author 杨强
 * 
 */
public interface ICollectionDao {

    /**
     * 添加收藏信息
     * 
     * @param collection
     *            收藏信息
     * @return true成功，false失败
     */
    public boolean doCreate(Collection collection);

    /**
     * 删除收藏信息
     * 
     * @param collection
     *            收藏信息
     * @return true成功，false失败
     */
    public boolean doDelete(Collection collection);

    /**
     * 删除收藏信息
     * 
     * @param userID
     *            用户ID
     * @param cookbookID
     *            菜谱ID
     * @return true成功，false失败
     */
    public boolean doDelete(String userID, long cookbookID);

    /**
     * 更新收藏信息
     * 
     * @param collection
     *            新收藏信息
     * @return true成功，false失败
     */
    public boolean doUpdate(Collection collection);

    /**
     * 查看指定某个用户的收藏信息
     * 
     * @param userID
     *            用户ID
     * @return 用户收藏信息集合
     */
    public List<Collection> getCollection(String userID);

    /**
     * 查看指定某个菜谱的收藏用户信息
     * 
     * @param cookbookID
     *            菜谱ID
     * @return 用户信息集合
     */
    public List<UserInfo> getCollection(long cookbookID);

}
